NOTE

3.8 MySQL InnoDB

1. InnoDB特点 1.1. 支持事务 - InnoDB事务.md 1.2. 支持行级锁 - MySQL锁.md 1.3. 支持MVCC - InnoDB MVCC.md 2. InnoDB架构 2.1. 内存层 2.1.1. Buffer Pool - 读缓冲区,目的是提升InnoDB性能,加

MySQL / Database创建于 更新于 historical

这是历史学习笔记,可能存在过时或不完整的理解。

1. InnoDB特点

1.1. 支持事务

1.2. 支持行级锁

1.3. 支持MVCC

2. InnoDB架构

1

2.1. 内存层

2.1.1. Buffer Pool

  • 读缓冲区,目的是提升InnoDB性能,加速读请求,避免每次数据访问都进行磁盘IO。
  • InnoDB Buffer Pool.md

2.1.2. Change Buffer

  • 写缓冲区,目的是提升InnoDB性能,加速写请求,避免每次写入都进行磁盘IO。
  • redo log 主要节省的是随机写磁盘的IO消耗(转成顺序写),而change buffer主要节省的则是随机读磁盘的IO消耗。

2.1.3. Log Buffer

  • 日志缓冲区,目的是提升InnoDB性能,保存要写入磁盘上的日志文件的数据,缓冲区的内容定期刷新到磁盘

2.1.4. Adaptive Hash Index

  • 自适应哈希索引,目的是提升InnoDB性能,使用索引关键字的前缀构建哈希索引,提升查询速度。

2.2. 磁盘层

2.2.1. Tables

2.2.2. Indexes

2.2.3. Tablespaces

2.2.4. Redo Log

2.2.5. Undo Logs

3. 参考